Telecommunication network

ABSTRACT

A telecommunication network  30  for telecommunications between telecommunication end point devices  36,37,38 , such as telephones or video phones, the telecommunication network  30  comprising a plurality of telecommunication device control systems  40  implemented by a computer system. Each telecommunication device control system  40  is shared by telecommunication end point devices  36,37,38  allocated to it and is configured to control communication connections involving telecommunications originating from telecommunication end point devices  36,37,38  allocated to it and other telecommunication end point devices. At least some functionality of the plurality of telecommunication device control systems  40  is shared by at least some parts of the computer system.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. patent application Ser. No.14/203,301, filed on Mar. 10, 2014, which claims the benefit of U.S.Provisional Patent Application No. 61/782,094, filed on Mar. 14, 2013,which also claims the benefit of United Kingdom Patent Application No.GB1304647.9, filed on Mar. 14, 2013. The disclosures of theseapplications are hereby incorporated by reference herein in theirentireties and made a part of the present disclosure.

TECHNICAL FIELD

The present invention relates generally to a telecommunication network.Embodiments of the invention relate to call control or communicationconnections of telecommunication devices such as an Internet Protocol(IP) telephone or IP video telephone on the telecommunication networkand allocating telecommunication resources, such as media resources toplay hold music or conference call controllers, to the telecommunicationdevices.

BACKGROUND

Calls made by telephones and video telephones are controlled by acall-control system or telecommunication device control system that isusually referred to as a PBX. PBX stands for private branch exchange.While the control systems used by modern VOIP (voice over IP) telephonesystems do not exchange anything the term PBX is still commonly used todescribe the controllers that have the same core functionality of PBXsused in public switched telephone networks where the term originated.

Current wide-area telecommunications networks for Internet Protocoldevices, broadly, have two different configurations or categories fortheir PBXs that are each described below.

One arrangement uses a PBX shared by a plurality of organisations thatis in a single physical location; the plurality of organisations sharethe same PBX hardware. It is a so-called public network. Atelecommunication network 8 incorporating such an arrangement isillustrated in FIG. 1. The telecommunication network of FIG. 1 includesa PBX 12 which offers service to two groups of telephones 11 and 13 viathe internet 10. The groups of telephones 11,13 share the hardwareresources of the PBX 12. The groups of telephones 11,13 connect to thetelephony service (PBX) 12 via the Internet 10. One group of telephones11 is owned by one organisation and the other group of telephones 13 isowned by another organisation. A call between telephones of the samegroup (either between telephones in the group of telephones 11 orbetween telephones in the group of telephones 13) will use the resourcesof the PBX 12 regardless of where the telephones are located on theglobe.

In this type of arrangement, a provider (a PBX 12) may be based in onecountry and a customer (using telephones 11) may connect to them fromanywhere in the world, but a call will be routed via the country of theprovider regardless of the destination. As a result, calls may have highlatency and data packets forming the telephone call are more at risk ofcongestion loss because of the large number of hops they need to travel.The further away from this physical location of the PBX the user'stelephone is located, the more inefficient the communications andresource usage becomes.

The other current wide-area telecommunications networks for IP devicesis a dedicated service for a single organisation spanning a wide area.These are privately owned global telephone systems or private networkswhich permit an employee to connect their IP phone to an organisation'snetwork from whatever of the organisation's sites they are on. Thecomponents in different locations share a common authentication systemand a common privately-owned wide-area network or virtual privatenetwork (VPN) and so components can be moved from one location toanother and will use the local resources. A telecommunication network 18incorporating such an arrangement is illustrated in FIG. 2.

FIG. 2 illustrates a single set of telephones for a single organisationsplit into two groups 23A, 23B. Some of these telephones 23A connect toone PBX 21 via the Internet 20 and some of these telephones 23B connectto another PBX 22 via the Internet 20 thus, between them the telephones23A, 23B of one organisation connect to two PBXs. These PBXs, in thetelecommunications network 18, form part of a distributedtelecommunications network which is owned by a single organisation.

In the arrangement of FIG. 2, the telephones 23A,23B are each connectedto the PBX 21 or 22 of their organisation that is located physicallyclosest to them. If a telephone 23A,23B was moved so it was now closerto the other PBX, it attaches to the new local PBX and uses itsresources without intervention from the user; it is transparent to theuser and the user would receive the same service experience that theyreceived in the old location.

The corporate telecommunications system or private network of FIG. 2allows local connection to a user and routes calls more efficiently thanin the public network example of FIG. 1. However, the networks andhardware of the arrangement of FIG. 2 is owned by a single organisationcannot be shared with other organisations.

SUMMARY

Embodiments of the invention address the problems of the prior artdescribed above.

The invention in its various aspects is defined in the independentclaims below to which reference should now be made. Advantageousfeatures are set forth in the dependent claims.

Arrangements are described in more detail below and take the form of atelecommunication network for telecommunications betweentelecommunication end point devices, such as telephones or video phones,the telecommunication network comprising a plurality oftelecommunication device control systems implemented by a computersystem. Each telecommunication device control system is shared bytelecommunication end point devices allocated to it and is configured tocontrol communication connections involving telecommunicationsoriginating from telecommunication end point devices allocated to it andother telecommunication end point devices. At least some functionalityof the plurality of telecommunication device control systems is sharedby at least some parts of the computer system.

In an aspect of the present invention, there is provided atelecommunication network for telecommunications betweentelecommunication end point devices, the telecommunication networkcomprising: a plurality of telecommunication device control systemsimplemented by a computer system, each telecommunication device controlsystem being shared by telecommunication end point devices allocated toit, and each telecommunication device control system being configured tocontrol communication connections involving telecommunicationsoriginating from telecommunication end point devices allocated to it andother telecommunication end point devices, wherein at least somefunctionality of the plurality of telecommunication device controlsystems are shared by at least some parts of the computer system.

The telecommunication network may further comprise a provisioningcomputer system configured to allocate one of the plurality oftelecommunication device control systems to each of thetelecommunication end point devices. One of the plurality oftelecommunication device control systems may be allocated to each of thetelecommunication end point devices according to one or more of thefollowing: geographical location of a telecommunication end pointdevice, latency of communications with the telecommunication end pointdevice, available bandwidth of communication to and/or from thetelecommunication end point device, monetary cost of communication toand/or from the telecommunication end point device, impact onmaintaining service level agreements to and/or from thetelecommunication end point devices. The provisioning computer systemmay be further configured to allocate computerized telecommunicationresources to each telecommunication end point device.

The computerized telecommunication resources may comprise one or more ofthe following: media resource, such as on-hold audio or the like, bordercontroller for controlling telecommunication across a border, such as afirewall or the like, conference call controller. The computerizedtelecommunication resources may comprise a plurality of conference callcontrollers. The provisioning computer system may be configured toallocate telecommunication end point devices to one of the conferencecall controllers of the plurality of conference call controllers basedon at least one predetermined criterion. The at least one predeterminedcriterion may comprise one or more of: physical proximity oftelecommunication end point device to a conference call controller, thenumber of conference call controllers on the telecommunication network,the number of media streams between conference call controllers, thenumber of telecommunications end point devices forming the conferencecall. The computerized telecommunication resources may be configured tobe shared by some of the plurality of telecommunication end pointdevices.

The telecommunication device control systems may be configured tocontrol communication connections between telecommunication end pointdevices via the Internet. The telecommunication device control systemsmay be configured to control a telecommunication end point deviceconnected to the Internet once a valid identity of the telecommunicationend point device is received from the telecommunication end pointdevice. The identity may comprise at least one of a signal generated inresponse to a hardware token applied to the telecommunication end pointdevice and/or credentials entered into a user interface of thetelecommunication end point device. The end point devices may comprisetelephones and/or video phones.

The telecommunication device control systems may each comprise at leastone storage device configured to store information regardingtelecommunication end point devices allocated to it. The at least onestorage device may be configured such that telecommunication end pointdevices allocated to a different telecommunication device control systemmay access the stored information. The information may comprise one ormore of: at least some of an address book, at least some of a dial plan,presence detect for providing an indication of presence of a user andtheir availability to receive a call at their telecommunication endpoint device on the telecommunication network, divert-to-mobileinformation for providing a mobile telephone number to divert atelephone call to if one or more predetermined criterion are met.

In another aspect of the present invention, there is provided atelecommunication network for telecommunications betweentelecommunication end point devices, the telecommunication networkcomprising: a plurality of computerized telecommunication resources,each computerized telecommunication resource being configured to providetelecommunication resources to a plurality of differenttelecommunication events; and a computerized telecommunication resourceallocator for allocating at least one of the plurality of computerizedtelecommunication resources to a telecommunication event betweentelecommunication end point devices on the network, the computerizedtelecommunication resource allocator being configured to assess thetelecommunication resource requirements of a telecommunication event andat least one predetermined criterion comprising at least one of thefollowing: geographical location of at least one of thetelecommunication end point devices and/or telecommunication resource,latency of at least some communication to and/or from at least one ofthe telecommunication end point devices and/or telecommunicationresource, available bandwidth of at least some communication to and/orfrom at least one of the telecommunication end point devices and/ortelecommunication resource, monetary cost of at least some communicationto and/or from at least one of the telecommunication end point devicesand/or telecommunication resource, impact on maintaining service levelagreements of at least some communication to and/or from at least someof the telecommunication end point devices and/or telecommunicationresource; and allocate at least one of the plurality of computerizedtelecommunication resources accordingly.

The computerized telecommunication resources may comprise one or more ofthe following: media resource, such as on-hold audio or the like, bordercontroller for controlling telecommunication across a border, such as afirewall or the like, conference call controller. The computerizedtelecommunication resources may be shared by some of the plurality oftelecommunication end point devices. The end point devices may comprisetelephones and/or video phones.

In another aspect of the present invention, there is provided acomputerized telecommunication resource allocator for allocating atleast one of a plurality of computerized telecommunication resources toa telecommunication event between telecommunication end point devices ona telecommunication network, the computerized telecommunication resourceallocator being configured to assess telecommunication resourcerequirements of a telecommunication event and at least one predeterminedcriterion comprising at least one of the following: geographicallocation of at least one of the telecommunication end point devicesand/or telecommunication resource, latency of at least somecommunication to and/or from at least one of the telecommunication endpoint devices and/or telecommunication resource, available bandwidth ofat least some communication to and/or from at least one of thetelecommunication end point devices and/or telecommunication resource,monetary cost of at least some communication to and/or from at least oneof the telecommunication end point devices and/or telecommunicationresource, impact on maintaining service level agreements of at leastsome communication to and/or from at least some of the telecommunicationend point devices and/or telecommunication resource; and allocate atleast one of a plurality of computerized telecommunication resourcesaccordingly.

The computerized telecommunication resources may comprise one or more ofthe following: media resource, such as on-hold audio or the like, bordercontroller for controlling telecommunication across a border, such as afirewall or the like, conference call controller. The computerizedtelecommunication resources may be shared by some of the plurality oftelecommunication end point devices. The end point devices may comprisetelephones and/or video phones.

In another aspect of the present invention, there is provided acomputerized telecommunication resource on a telecommunications network,the computerized telecommunications resource configured to: provide atelecommunications resource to telecommunication events under thecontrol of different telecommunication device control systems.

The computerized telecommunication resource may comprise one or more ofthe following: media resource, such as on-hold audio or the like, bordercontroller for controlling telecommunication across a border, such as afirewall or the like, conference call controller.

The telecommunications event may comprise an end point device to endpoint device call or a conference call comprising three or more endpoint devices.

In another aspect of the present invention, there is provided atelecommunication method for telecommunications betweentelecommunication end point devices, the telecommunication methodcomprising: at least some parts of a computer system sharing at leastsome functionality between a plurality of telecommunication devicecontrol systems each controlling communication connections betweentelecommunication end point devices.

In another aspect of the present invention, there is provided acomputerized method of allocating at least one of a plurality oftelecommunication resources to a telecommunication event betweentelecommunication end point devices on a telecommunication network, thecomputerized method comprising: assessing telecommunication resourcerequirements of a telecommunication event and at least one predeterminedcriterion comprising at least one of the following: geographicallocation of at least one of the telecommunication end point devicesand/or telecommunication resource, latency of at least somecommunication to and/or from at least one of the telecommunication endpoint devices and/or telecommunication resource, available bandwidth ofat least some communication to and/or from at least one of thetelecommunication end point devices and/or telecommunication resource,monetary cost of at least some communication to and/or from at least oneof the telecommunication end point devices and/or telecommunicationresource, impact on maintaining service level agreements of at leastsome communication to and/or from at least some of the telecommunicationend point devices and/or telecommunication resource; and allocating atleast one of a plurality of computerized telecommunication resourcesaccordingly.

In another aspect of the present invention, there is provided a computersystem for enabling telecommunication connections through a firewall,the computer system comprising: a relay system configured to be locatedon the public Internet on one side of a firewall and configured to beshared by a plurality of telecommunication end point devices each onanother, private side of a firewall, the relay system being configuredto relay media to and from each telecommunication end point device thatshare the relay system, the relay system being configured to beallocated to particular telecommunication end point devices based on atleast one predetermined criterion. The predetermined criterion maycomprise: geographical location of at least one of the telecommunicationend point devices and/or relay system, latency of at least somecommunication to and/or from at least one of the telecommunication endpoint devices and/or relay system, available bandwidth of at least somecommunication to and/or from at least one of the telecommunication endpoint devices and/or relay system, monetary cost of at least somecommunication to and/or from at least one of the telecommunication endpoint devices and/or relay system, impact on maintaining service levelagreements of at least some communication to and/or from at least someof the telecommunication end point devices and/or relay system.

In another aspect of the present invention, there is provided acomputerized method for enabling telecommunication connections through afirewall, the computerized method comprising: allocating a relay systemto particular telecommunication end point devices based on at least onepredetermined criterion, the relay system being located on the publicInternet on one side of a firewall and shared by a plurality oftelecommunication end point devices, and the relay system relaying mediato and from each telecommunication end point device that share the relaysystem.

Thus, a system provides PBX, telecommunication device control system orcall control functionality to multiple organisations sharing hardware ina global Internet telecommunications network. A telephone orvideo-telephone device connected directly or indirectly to the Internetand, in particular, the global Internet, may obtain efficient telephoneor video-telephone service as part of an organisation's telephone systemby connecting to a shared, globally accessible, cloud-based InternetTelephony network. In this way, an efficient, global, shared telephonyservice is provided to an internet protocol enabled telephony device orend point. The Internet connected telephony or videotelephony devicereceives service from a distributed network of devices in the Internetwhich have the characteristics of being shared with other organisations,and being distributed physically across the world.

Embodiments of the present invention provide a method and system thatprovides telephony service to a device connected to the global Internet.The embodiments offer both the benefits of a shared hosted telephonysystem and the benefits of a global telephony system. It allows a voiceor video end point to connect to a globally provisioned sharedtelecommunications network and receive efficient resource allocationbased on the physical location of the user combined with the featuresand abilities (for example, dialplan) associated with the organisationto which the user belongs.

A global telecommunications network infrastructure of embodiments of thepresent invention may be owned by a service provider and organisationsthen use this infrastructure by agreement with the service provider.Each of the organisations has its own virtual call-control system on thenetwork but the hardware which provides this call-control is sharedbetween organisations.

Embodiments of the present invention are particularly applicable to avideo telecommunications network although the telecommunications networkmay also be used for voice-only communications. This is because the highbandwidth or data transfer rate of video makes the prior artarrangements described above unsuitable for video.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be described in more detail, by way of example, withreference to the accompanying drawings, in which:

FIGS. 1 and 2 (prior art) are schematic diagrams of knowntelecommunication networks; and

FIG. 3 is a schematic diagram of a telecommunication network embodyingan aspect of the present invention.

DETAILED DESCRIPTION

A telecommunication network for telecommunications betweentelecommunication end-point devices, such as IP telephones or IP videophones, embodying aspects of the invention will now be described withreference to FIG. 3.

Broadly, the telecommunication network 30 of FIG. 3 is a global sharedtelecommunications network. The telecommunication network includes aplurality of telecommunication device control systems or PBXs 40. Itincludes, in this example, one group of PBXs 40. However, there may bemore than one group of PBXs. Each of the telecommunication devicecontrol systems is configured to make and control communicationconnections between telecommunication end-point devices, in thisexample, IP telephones or IP video phones 36,37,38. The communicationconnections involve telecommunications or calls originating fromtelephones allocated or assigned to the particular telecommunicationdevice control system. Each telecommunication end point device, endpoint device or telephone is connected to its associated PBX by theInternet 10 (although they could be connected by other networks). Eachend point device is controlled by a single one of the PBXs. Theallocation of a PBX to a particular telephone (or other end pointdevice) does not mean that the particular telephone has exclusive use ofthe PBX. Typically, many telephones have use of each PBX. However, eachtelephone uses only a single PBX; a PBX assigned or allocated to aparticular telephone has exclusive control over that telephone. Theplurality of telecommunication device control systems are implemented byone and only one computer system. Each telecommunication device controlsystem may be a single call-control device located anywhere on theInternet or it may be a distributed call-control device in a pluralityor several geographical locations. The computer system typicallyincludes a plurality of computers on a network, but may include a singlecomputer or bespoke hardware. Significantly, at least some functionalityof the plurality of telecommunication device control systems are sharedby at least some parts of the computer system. Furthermore, importantly,the allocation or sharing of the computer resources shared by the PBXsis not done for the benefit of just one customer or end point, but for aplurality of endpoints. The allocation is carried out by a softwaremodule of the computer system shared by the PBXs, which is outside thecontrol or not controlled by any single PBX. This software module may bedistributed, central or collocated with the part of the shared computersystem or hardware resource that implements the PBXs.

A PBX is allocated to a particular end-point device by a provisioningserver 31. The provisioning server forms part of the telecommunicationnetwork 30. It is in communication connection to the end-point devices36,37,38 via the Internet 10. The provisioning server takes the form ofa provisioning computer system comprising one or more computers on anetwork. The telecommunication network 30 also includestelecommunication resources or shared media-processing devices includingborder controllers 32, 33 and media resources 34, 35 (as well asconference call controllers, which are not shown in FIG. 3). Resourcesof this type are distributed across the Internet or network. They toomay be in communication connection with the end-point devices ortelephones 36,37,38 via the Internet. How these communicationconnections are formed and configured is discussed in more detailfurther below.

End-point devices or telephones 36,37,38 are assigned to a PBX 40 basedon their identity under the control of the provisioning server orprovisioning computer system 31. The end-point devices are assigned tomedia-processing devices or media resources based on physical location(although other bases or predetermined criterion are possible asdescribed further below). In this example, there are three end-pointdevices or telephones shown. Two of these telephones 36,37 belong to thesame organisation. The other telephone 38 belongs to anotherorganisation. This aspect of the telecommunication network is alsodiscussed in more detail below.

Provisioning and Registration

The provisioning server 31 or provisioning computer system is created onthe public Internet. Typically, it is not run by the organisation orcompany owning the IP telephones or endpoint devices 36,37,38 or the IPPBX 34. They may be run by the manufacturer of the IP telephones, or byan independent organisation. They are trusted by the IP telephones toprovide the necessary information to reach the PBX or a gatewaybelonging to the company that owns the IP telephone. The IP telephone36,37,38 locates a provisioning server 32 using any of the methodsdescribed below. The provisioning server then provides information tothe end point in order for it to connect to the correct PBX 40.

When powered on, the telephones 36,37,38 connect to the provisioningserver 31 via the Internet 10 and identify themselves. They may identifythemselves in any of several means. For example, this identification maybe by using any of the many authentication systems available, such asdigital certificates, or a username and a password entered by a user ofthe telephone, network address or local network address, such as a MediaAccess Control address (MAC), and a password entered by a user of thetelephone. The telephone may also provide geographical location orgeolocation information such as latitude and longitude of the telephonefrom a global positioning system (GPS) or nearby wireless network accesspoint (WiFi access point) addresses or source Internet Protocol (IP)address of the request.

The provisioning server 31 then uses the identity of the user orend-point device 36,37,38 to direct the device to a PBX or virtual PBX40. As described above, the PBX may be a single call-control deviceanywhere on the Internet, or it may be a distributed call-control devicein several geographical locations. In this latter case, the provisioningserver may use the credentials of the user or end point device asreceived or provided by the end point device as described above todirect the device to connect to the nearest appropriate PBX.Alternatively, the provisioning server may use the latency ofcommunications with the user or end-point device to direct the end pointdevice to connect to the nearest appropriate PBX. In other words,geographical nearness is not necessarily a measure of the physicalnearness of two devices (the PBX and the end point device), but may be ameasure of the time taken and congestion encountered by a packettravelling from one device to another over the Internet. Theprovisioning server may select the PBX based on the available bandwidthor data transfer rate of communication to and/or from the end pointdevice. The provisioning server may select the PBX based on the monetarycost of communication to and/or from the end point device. Theprovisioning server may select the PBX based on the impact onmaintaining service level agreement or agreements to and/or from the endpoint device.

The end point device or telephone 36,37,38 then connects to the PBX 40and authenticates itself forming a communication connection orcommunications channel between them. This communications channel allowsthe telephone to issue and handle call-control operations from the PBXassigned to it.

Telecommunication Resource Allocation

In the example network 30 of FIG. 3, a computerized telecommunicationresource allocator allocates or assigns at least one of a plurality ofcomputerized telecommunication resources to a call betweentelecommunication end point devices on the network. In this example, acomputerized telecommunication resource allocator is located at or formspart of the provisioning server (the provisioning server and thecomputerized telecommunication resource allocator may be separatecomputer systems) and another computerized telecommunication resourceallocator is located at or forms part of each PBX 40 (the PBX and thecomputerized telecommunication resource allocator may be separatecomputer systems). Telecommunication resources are telecommunicationservices that may be required by a telephone end point device other thanforming a communication connection or setting up and ending a call. Theyare typically dedicated digital signal processing (DSP) devices. Theaforementioned computerized telecommunication resource allocators assigncomputerized telecommunication resources, such as media resources (forexample, on-hold audio or music resources or the like) 34,35, NetworkAddress Translation (NAT) routing services (not shown in FIG. 3) and aborder controller 32,33 for controlling telecommunications across aborder and, in particular, a firewall (a particular border controllerarrangement is described in more detail further below) to the telephones36,37,38 during a telecommunication event such as during a telephonecall. The computerized telecommunication resource allocator allocates orassigns at least one of the plurality of the computerizedtelecommunication resources to a call between telecommunication endpoint devices on the network by assessing the telecommunication resourcerequirements of the call or telecommunication event and allocating atleast one of the computerized telecommunication resources accordingly.The computerized telecommunication resources are each configured toprovide a telecommunications resource to telecommunication events underthe control of different telecommunication device control systems orPBXs 40. It is another example of shared resources in thetelecommunication network described herein. The resource allocator usesthe geographical location of the user or telephone either fromgeolocation data in the request, or associated with the IP address ofthe user to determine the most local group of telecommunicationsresources to assign to the end point device or telephone (and not thePBX that controls it). In this example, the resource allocator alsoprovides a second and further choices of nearby telecommunicationsresources (such as in neighbouring cities or countries) to the end-pointdevice to provide an alternative if the first or further choice fails(for example, the geographically nearest telecommunications resource inunavailable either due to device failure or network failure) or, inother words, allow failover from the best and subsequent choices. Inaddition to or as an alternative to using geographical location eventother predetermined criterion may be used by the resource allocator toallocate resources. These include: latency of at least somecommunication to and/or from at least one of the telecommunication endpoint devices and/or telecommunication resource, available bandwidth ordate transfer rate of at least some communication to and/or from atleast one of the telecommunication end point devices and/ortelecommunication resource, monetary cost of at least some communicationto and/or from at least one of the telecommunication end point devicesand/or telecommunication resource, and/or impact on maintaining servicelevel agreements of at least some communication to and/or from at leastsome of the telecommunication end point devices and/or telecommunicationresource. The aim is to produce a balanced load across the resourcesavailable on the network based on one or more of the criteria set-outabove. The impact of maintaining service level agreements as mentionedabove is a particular issue for the shared cloud-based PBX systemdescribed herein that does not exist in the prior art examples discussedabove. In shared cloud-based PBX system described herein, the impact ona service level agreement for customer A is taken into account whendeciding if a shared resource can be given to customer B. By way ofexample, customer A has paid to have a service level agreement thatincludes always being able to have a resource in the form of aconference bridge. If, however, all the conference bridges are given tocustomer B and customer A then decides to create a conference requiringa conference bridge then customer A's service level agreement will bebroken. Thus, when allocating resources to customer B the service levelagreement of customer A needs to be considered or, more generally, whenallocating resources to one customer, user or end point device, theservice level agreements of other customers, users or end point devicesis taken into consideration. In other words maintenance of service levelagreements is about endeavouring to maintain such agreements across someor all users or end point devices.

Two paradigms or methods may be used for choosing an appropriateresource for each particular end-point or telephone 36,37,38 to aim toachieve a balanced load. Notably, this is not dependent on the PBX thatcontrols the telephone and the same resource may be used or shared bydifferent telephones under the control of different PBXs. The twomethods are a distributed resource allocation system (in which the listof all possible resources available for allocation is maintained orstored in a storage device near the provisioning server 31 and passed tothe end point devices for them to attempt allocation) and a centralizedresource allocation system (in which the list of all possible resourcesavailable for allocation is held or stored in a storage device centrallyfor use by the PBXs which attempt allocation). These are described inturn below.

Distributed Resource Allocation

Distributed resource allocation by the provisioning server 31 is asfollows. During the provisioning phase of a telephony end-point's36,37,38 connection to the telephony network 30, the resource allocatorin the form of a computer or computers on a network near theprovisioning server 31 may use knowledge of the geographical location ofthe user or telephone (independent of its controlling PBX) to indicateto the user a list of geographically near or nearest telecommunicationresources (such as media resources 34,35 or border controller 32,33).This list typically includes the nearest telecommunication resources ofvarious types to the end-point as well as a plurality of othertelecommunication resources of various types in increasing distance fromthe end-point. This list is kept or stored in a store or memory(typically a solid-state memory) of the telephony end-point such thatwhen it needs to use one of these resources it can contact the resourcedirectly. The endsystem or end-point device may re-request the list ofgeographically local resources from the provisioning server at any timeand the provisioning server will then receive this request and, inresponse, send or transmit a new list to the end-point where it isstored in the store or memory of the end-point device and replaces theprevious stored list. Generally, the closer a telecommunication resourceis to an end-point device the quicker the end-point device will receivethe desired response from the telecommunication resource. However, as analternative to be provided with and storing the geographically nearestor closest media resource, the end-point device may be provided with andstore the telecommunication resource which is expected to provide itwith the desired response in the shortest time or lowest latency. Asdescribed above, there are other methods for selecting an appropriateresource, such as, available bandwidth or data transfer rate, monetarycost of communication, and impact on maintaining service levelagreements (as described above where maintenance of service levelagreements is about endeavouring to maintain such agreements across allor at least some users or end point devices). In use, by way of example,if an endpoint device 36,37,38 wanted hold music to play to a user ofthe device that has been put on hold by its controlling PBX 40, itrequests the media resource (provided using one of the arrangementsdescribed above) in the form of a local music resource to provide amedia stream of hold music as indicated. The local music resource mayaccept the request and stream music to the requesting endpoint device.Alternatively, the local music resource may decline the request in whichcase the endpoint device would proceed to request the next mostgeographically near music server as stored in its store and repeat therequest. This process is continued with by making requests to ever moredistant or otherwise less favourable media resources as indicated in thestore of the end-point until the end-point's request is met by a mediaresource.

Another example of the system in use relates to when an endpoint deviceis behind a firewall and therefore requires firewall-traversal help froma resource in the form of a border controller 32,33 (an external butgeographically local media relay device). By way of example, theendpoint device would make a request for relaying services from the mostlocal relay device (or otherwise most desirable relay device dependingon the criteria used). The relay service may accept the request and thenallow itself to be used to relay media from and to that endpoint device.Alternatively, it may decline the request in which case the endpointdevice would proceed to the next most geographically near media relayserver (or otherwise next most desirable server) and repeat the request.Again, this process is continued with by making requests to ever moredistant (or less desirable) services as indicated in the store of theend-point until the end-point's request is met by a service.

Each endsystem or endpoint device 36,37,38 may maintain a communicationconnection with some local (or otherwise desirable) telecommunicationresources 32,33,34,35 such as media resources even when they are notbeing used by that end system. This allows the end system to morequickly decide whether to use most-local resources or less optimal (forexample, second or third choice) resources. In this arrangement, thetelecommunication resources are configured to periodically transmit orsend information on their status to the endpoint devices desiring tomaintain a communication connection with them. The endpoint devices thenexpect to periodically receive this status information. Based on thisperiodic status information received from resources or deduced from aresource failing to provide periodic status information or the endpointfailing to receive it, the endsystems may quickly decide whether to usemost-local or most-desirable resources or less optimal resources (forexample, second or third choice). This could be because the statusinformation transmitted from a resource and received from the resourceby the endpoint indicates that: the resource is low on capacity and willbe rejecting new requests, the resource has been taken out of service,or a service level agreement (SLA) could not be met for a particularcustomer if other customers were allowed to make further requests ofthis resource. Thus resource allocation is based not only on the mosttechnically suitable device, but other things including whether aparticular resource will impact on an SLA with another customer.

Centralized Resource Allocation

In centralized resource allocation, telecommunication resources32,33,34,35 of the types described above are allocated to an endpointdevice 36,37,38 by a centrally located computerized resource allocatorin the form of a computer or computers on a network.

In this arrangement, geographical knowledge and/or other relevantinformation about the end point device 36,37,38 is passed from thecomputerized resource allocator to the call-control system or PBX 40.This may happen during registration, on demand from the call-controlsystem, or on demand from the end point device (for example, if the endpoint device observes a change in its location). Telecommunicationresources 32,33,34,35, such as media resources or other resources asdescribed above, are then requested on behalf of the endpoint device bythe call-control system.

In use, by way of example, if a user of an end point device 36,37,38 isto be placed on hold, then the call-control system or PBX 40 will make arequest to a media resource 34,35 in the form of an on-hold music servergeographically near (if that is the criteria used to assign or allocatea resource) based on information or data stored at the computerizedresource allocator to the user's endpoint for that music server tostream on-hold media to the user's endpoint device. The music server mayaccept the request and proceed to stream media or music to the endpointdevice. It may alternatively decline the request in which case the PBXwould proceed to the next most geographically near (or otherwise nextmost desirable) music server based on data stored at the computerizedresource allocator and repeat the request and so on until the request ismet.

Another example, in use, would be for an end point device 36,37,38 thatis behind a firewall and therefore requires firewall-traversal help froman external but local media relay device or border controller 32,33. Thecall-control system 40 would make a request for relaying services fromthe most local (or otherwise most desirable) relay device or bordercontroller based on data stored at the computerized resource allocatoron behalf of the endpoint device. The relay service may accept therequest and then allow itself to be used to relay media from and to theendpoint device. Alternatively, it may decline the request in which casethe call-control system would proceed to the next most geographicallynear (or next most desirable) media relay server based on data stored atthe computerized resource allocator and repeat the request and so onuntil the request is met.

Similarly to distributed resource allocation, each cal-control system orPBX 40 may maintain a communication connection with thetelecommunication resources 32,33,34,35, such as media resources local(or most desirable) to its clients or assigned end point devices36,37,38 even when they are not being used by those clients. In thisarrangement, the telecommunication resources are configured toperiodically transmit or send information on their status to the PBXdesiring to maintain a communication connection with them. The PBXs thenexpect to periodically receive this status information. Based on thisperiodic status information received from resources or deduced from aresource failing to provide periodic status information or the PBXfailing to receive it, the PBXs may (quickly) decide whether to usemost-local resources or less optimal resources (for example, second orthird choice). This could be because the status information transmittedfrom a resource and received from the resource by the PBX indicatesthat: the resource is low on capacity and will be rejecting newrequests, or the resource has been taken out of service, or a servicelevel agreement could not be met for a particular customer if othercustomers were allowed to make further requests of this resource.

Call Placement

A user places a call or sets up a telecommunication event by diallingthe number on a user interface of their end point device or telephone36,37,38 of the endpoint device or telephone they wish to call in theusual way. This number is transmitted by the end point device to the PBX40 assigned to the end point device over the Internet 10. The PBX setsup and controls the call between the end point devices so that acommunication connection is established between them over the Internetand the communication connection is broken when the call is ended by oneor more of the users pressing an appropriate button or placing thehandset of the telephone in its cradle. The configuration of thiscommunication connection is described below.

When a user places a call using their end point device 36,37,38, the endpoint or telephone and call-control system (PBX) 40 between them decidewhat, if any, media resources 34,35 are required for the call. If nomedia resources are required, then the telephone sends and receivesmedia streams directly with the called-party's device. However, thereare several reasons why a media stream may not be able to be sentdirectly to the called-party's device, in which case telecommunicationresources 32,33 are required as explained below.

One such reason is control of the border between a corporate network andthe public Internet 10. In this case, the firewall at the border mayonly allow telecommunications with a restricted list of addresses on thepublic Internet, or may not allow connection into the corporate networkexcept from a restricted list of sources. This may be due to, forexample, security policy or network address translation requirements.This list would include the addresses of the border controllers 32,33 ofthe telecommunications provider's network. This is a “safe” address thatwould be known to an IT department responsible for the corporate networkso that they can program their firewall to flag the addresses of theborder controllers as “safe”. The telephones or endpoint device 36,37,38are then instructed to send their media streams to a nearby bordercontroller. A border controller is a computer system for enablingtelecommunication connections through a firewall. It includes a relaysystem located on the (public) Internet on one side of a firewall. Therelay system is shared by a plurality of end point devices each onanother, private side of a firewall. The relay system relays media toand from each end point device that shares the relay system. (Thisshared border controller is another example of a shared resource). Theborder controller is selected or allocated following the method based onthe list of border controllers made available by the distributed orcentralized allocation methods or at least one predetermined criteriondescribed above. The selected border controller passes on the mediastreams from the source end-point device on to the final destinationend-point device or to a border-controller near to the finaldestination, which then sends them on to the final destination end-pointdevice.

Another reason why a media stream may not be able to be sent directly tothe called-party's end point device 36,37,38 is a mismatch between thecapabilities of the end point devices. In this case, the end pointdevices or telephones are instructed to send their media streams to ageographically nearby border controller or transcoding engine (selectedfollowing the method based on the list of border controllers madeavailable by the distributed or centralized allocation methods describedabove) 32,33 to translate between the different formats required by theend point devices.

If a call is put on hold then the end point device or telephone 36,37,38put on hold should receive on-hold music and/or video (in the case of avideo phone) provided by a media resource or on-hold server 34,35geographically near to the telephone as selected following the methodbased on the list of media resources made available by the distributedor centralized allocation methods described above.

If a multi-phone conference is required then the telecommunicationssystem can allocate telecommunication resources in the form ofconferencing media resources (not shown in FIG. 3) which aregeographically near (or otherwise desirable) to the group of telephones36,37,38 requiring the conference as selected following the method basedon the list of telecommunication resources made available by thedistributed or centralized allocation methods described above, or in thecase of large conferences may distribute the conference across severalconference bridges to minimise the amount of long-distance traffic,again, as selected following the method based on the list oftelecommunication resources made available by the distributed orcentralized allocation methods described above.

Global Shared PBX Inter-Organisation Extensions

A telecommunication network 30 of the type described above in which thetelecommunication network may be, in effect, shared between two (ormore) organisations allows controlled sharing of information betweensome or all of these organisations which would otherwise be difficult toimplement. This sharing of information may include, for example, two (ormore) different but collaborating organisations choosing to sharepartial address books or partial dialplans to allow bettercommunications between the two (or more) organisations or two (or more)organisations that have a close business relationship could choose toallow presence-detect (an indication of presence of a person and theiravailability to receive calls at their telephone) or divert-to-mobileinformation (a mobile telephone number to divert a telephone call to ifone or more predetermined criterion are met, such as, if the user doesnot answer their telephone within a particular time or number of rings)to be shared for certain employees.

The ease of information sharing is achieved as the information to beshared regarding telephones allocated to a particular PBX (addressbooks, dialplans, presence-detection and divert-to-mobile information)is stored in a storage device (such as a hard disk drive) of the PBX 40allocated as the PBX of each organisation as this PBX functionality isshared by at least some parts of the same computer system. Thus, byproviding access to this data by simply providing appropriatepermissions, the information may be shared.

Public Global Hot-Desking

A global telecommunications network 30, such as that described here,which was subscribed to by managed offices could advantageously offertemporary connection to a corporate system on that network by atelephone 36,37,38 included as part of an office rental (for example).

An employee of a company could rent an office for a short period, thatrental including use of a telephone 36,37,38 connected to the globaltelecommunications network 30 that their company uses. The employee canthen connect to the company's telecommunications system by identifyingthemselves with a valid identity, by way of example, using a hardwaretoken such as a smart card that causes a signal to be sent to thetelecommunication system or credentials such as a username and passwordentered into a user interface of the employee's telephone (and thetelephone being configured accordingly). That telephone is then directedto connect to the company's telephone system implemented on thetelecommunication network described above and takes on thecharacteristics assigned by that company for the duration of the user'sresidence in the rented office.

Multipoint Conference

The telecommunication network 30 may include telecommunication resourceseach in the form of conference controllers or conference callcontrollers (not shown in FIG. 3) in the form of one or more computerson a network connected to the Internet 10.

For a multipoint conference with centralized resource allocation, acall-control system or PBX 40 may use the collective knowledge of thegeographical locations or physical proximity of the conferenceparticipants telephones or end point devices 36,37,38 to efficientlypartition the conference across various geographically diverseconference controllers.

The call-control system or PBX 40 would group participants to use aparticular conference controller with geographically similar (orotherwise desirable) locations using a trade-off between the number ofconference controllers used, the number of interconnecting media streamsbetween the conference controllers and the number of participants (endpoint devices 36,37,38) connected to each conference controller todecide which participants should use which conference controller and howthose controllers should interconnect.

Once this decision is made, the call-control system 40 would contacteach conference controller resource to allocate those resources. Aconference controller may accept the request and set up the mediaresources to satisfy the conference requirements, or it could declinethe request, in which case the call control system would either repeatthe request to a geographically next-best (or otherwise next-best)conference controller, or it may change the topology of the conferencecontrollers and their interconnects in order to find a solution whichall the conference controllers will accept. This process may repeatuntil a solution is found or until the call control system rejects theoriginal conference request from the user's end point device 36,37,38.

Embodiments of the present invention have been described. It will beappreciated that variations and modifications may be made to thedescribed embodiments within the scope of the present invention. Forexample, while embodiments have been described with reference to atelecommunication devices in the form of end point devices ortelephones, these end point device may include an IP telephone or an IPvideo telephone or videophone. The end point device may also be acomputer such as a laptop computer, desktop computer or smart phone.

1. A telecommunication network for telecommunications betweentelecommunication end point devices, the telecommunication networkcomprising: a plurality of telecommunication device control systemsimplemented by a computer system, each telecommunication device controlsystem being shared by telecommunication end point devices allocated toit, and each telecommunication device control system being configured tocontrol communication connections involving telecommunicationsoriginating from telecommunication end point devices allocated to it andother telecommunication end point devices, wherein at least somefunctionality of the plurality of telecommunication device controlsystems are shared by at least some parts of the computer system.
 2. Atelecommunication network according to claim 1, wherein one of theplurality of telecommunication device control systems is allocated toeach of the telecommunication end point devices according to one or moreof the following: geographical location of a telecommunication end pointdevice, latency of communications with the telecommunication end pointdevice, available bandwidth of communication to and/or from thetelecommunication end point device, monetary cost of communication toand/or from the telecommunication end point device, and impact onmaintaining service level agreements to and/or from thetelecommunication end point devices.
 3. A telecommunication networkaccording to claim 2, wherein the provisioning computer system isfurther configured to allocate computerized telecommunication resourcesto each telecommunication end point device.
 4. A telecommunicationnetwork according to claim 3, wherein the computerized telecommunicationresources comprise one or more of the following: media resource, such ason-hold audio or the like, border controller for controllingtelecommunication across a border, such as a firewall or the like, andconference call controller.
 5. A telecommunication network according toclaim 4, wherein the computerized telecommunication resources comprise aplurality of conference call controllers.
 6. A telecommunication networkaccording to claim 5, wherein the provisioning computer system isconfigured to allocate telecommunication end point devices to one of theconference call controllers of the plurality of conference callcontrollers based on at least one predetermined criterion.
 7. Atelecommunication network according to claim 6, wherein the at least onepredetermined criterion comprise one or more of: physical proximity oftelecommunication end point device to a conference call controller, thenumber of conference call controllers on the telecommunication network,the number of media streams between conference call controllers, and thenumber of telecommunications end point devices forming the conferencecall.
 8. A telecommunication network according to claim 4, wherein thecomputerized telecommunication resources are configured to be shared bysome of the plurality of telecommunication end point devices.
 9. Atelecommunication network according to claim 1, wherein thetelecommunication device control systems are configured to control atelecommunication end point device connected to the Internet once avalid identity of the telecommunication end point device is receivedfrom the telecommunication end point device.
 10. A telecommunicationnetwork according to claim 9, wherein the identity comprises at leastone of a signal generated in response to a hardware token applied to thetelecommunication end point device and/or credentials entered into auser interface of the telecommunication end point device.
 11. Atelecommunication network for telecommunications betweentelecommunication end point devices, the telecommunication networkcomprising: a plurality of computerized telecommunication resources,each computerized telecommunication resource being configured to providetelecommunication resources to a plurality of differenttelecommunication events; and a computerized telecommunication resourceallocator for allocating at least one of the plurality of computerizedtelecommunication resources to a telecommunication event betweentelecommunication end point devices on the network, the computerizedtelecommunication resource allocator being configured to assess thetelecommunication resource requirements of a telecommunication event andat least one predetermined criterion comprising at least one of thefollowing: geographical location of at least one of thetelecommunication end point devices and/or telecommunication resource,latency of at least some communication to and/or from at least one ofthe telecommunication end point devices and/or telecommunicationresource, available bandwidth of at least some communication to and/orfrom at least one of the telecommunication end point devices and/ortelecommunication resource, monetary cost of at least some communicationto and/or from at least one of the telecommunication end point devicesand/or telecommunication resource, and impact on maintaining servicelevel agreements of at least some communication to and/or from at leastsome of the telecommunication end point devices and/or telecommunicationresource; and the computerized telecommunication resource allocatorbeing further configured to allocate at least one of the plurality ofcomputerized telecommunication resources accordingly.
 12. Atelecommunication network according to claim 11, wherein thecomputerized telecommunication resources comprise one or more of thefollowing: media resource, such as on-hold audio or the like, bordercontroller for controlling telecommunication across a border, such as afirewall or the like, and conference call controller.
 13. Atelecommunication network according to claim 11, wherein thecomputerized telecommunication resources are shared by some of theplurality of telecommunication end point devices.
 14. Atelecommunication network according to claim 11, wherein the end pointdevices comprise telephones and/or video phones.
 15. A computerizedtelecommunication resource allocator for allocating at least one of aplurality of computerized telecommunication resources to atelecommunication event between telecommunication end point devices on atelecommunication network, the computerized telecommunication resourceallocator being configured to assess telecommunication resourcerequirements of a telecommunication event and at least one predeterminedcriterion comprising at least one of the following: geographicallocation of at least one of the telecommunication end point devicesand/or telecommunication resource, latency of at least somecommunication to and/or from at least one of the telecommunication endpoint devices and/or telecommunication resource, available bandwidth ofat least some communication to and/or from at least one of thetelecommunication end point devices and/or telecommunication resource,monetary cost of at least some communication to and/or from at least oneof the telecommunication end point devices and/or telecommunicationresource, and impact on maintaining service level agreements of at leastsome communication to and/or from at least some of the telecommunicationend point devices and/or telecommunication resource; and thecomputerized telecommunication resource allocator being furtherconfigured to allocate at least one of a plurality of computerizedtelecommunication resources accordingly.
 16. A computer system forenabling telecommunication connections through a firewall, the computersystem comprising: a relay system configured to be located on the publicInternet on one side of a firewall and configured to be shared by aplurality of telecommunication end point devices each on another,private side of a firewall, the relay system being configured to relaymedia to and from each telecommunication end point device that share therelay system, the relay system being configured to be allocated toparticular telecommunication end point devices based on at least onepredetermined criterion.
 17. A computer system according to claim 16,wherein the predetermined criterion comprise: geographical location ofat least one of the telecommunication end point devices and/or relaysystem, latency of at least some communication to and/or from at leastone of the telecommunication end point devices and/or relay system,available bandwidth of at least some communication to and/or from atleast one of the telecommunication end point devices and/or relaysystem, monetary cost of at least some communication to and/or from atleast one of the telecommunication end point devices and/or relaysystem, and impact on maintaining service level agreements of at leastsome communication to and/or from at least some of the telecommunicationend point devices and/or relay system.